SPB Git
811 B · 10 lines typescript
1import { getPaper } from "@/lib/papers/queries";2import { json, limited, tooMany } from "@/lib/api";3import { APP_URL } from "@/lib/env";4export async function GET(req: Request, { params }: { params: Promise<{ id: string }> }) {5  if (limited(req, "api")) return tooMany();6  const { id } = await params; const p = await getPaper(id); if (!p) return Response.json({ error: "Not found" }, { status: 404 });7  const { embedding_model, ...rest } = p; void embedding_model;8  return json({ ...rest, url: `${APP_URL}/papers/${p.slug}`, pdf_url: p.has_pdf && p.file_id ? `${APP_URL}/api/files/${p.file_id}/${p.slug}-${p.version_label ?? "current"}.pdf` : null, versions: p.versions.map((v) => ({ ...v, pdf_url: v.file_id && !v.withdrawn ? `${APP_URL}/api/files/${v.file_id}/${p.slug}-${v.label}.pdf` : null })) });9}10
Files · ef2aafa50a0de3a6025a4230d5261ba6d89d122c
Menu

Theme